// 折线长度计算
function getLineLength (arr) {
    //传入arr：[  [ lng, lat ], [ lng, lat ]  ]
    let d = 0;
    var _this = this;
    arr.forEach((v, i) => {
        if (i < arr.length - 1) {
            d += getDistance(v[1], v[0], arr[i + 1][1], arr[i + 1][0]);
        }
    });
    // 单位米
    return parseInt(d * 1000);
}
function getDistance (lat1, lng1, lat2, lng2) {
    var radLat1 = lat1 * Math.PI / 180.0;
    var radLat2 = lat2 * Math.PI / 180.0;
    var a = radLat1 - radLat2;
    var b = lng1 * Math.PI / 180.0 - lng2 * Math.PI / 180.0;
    var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) +
        Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
    s = s * 6378.137;
    s = Math.round(s * 10000) / 10000;
    return s;
}



export default {
    getLineLength
}